import QtQuick 2.0
import QtGraphicalEffects 1.0
import QtQuick.Window 2.0
import "."
import "../../javascript/Utils.js" as UtilsJS
import "../../javascript/QChart.js" as Charts



Rectangle {
    id: cardDesempenho
    width: parent.width
    height: content.height + UtilsJS.dp2px(15)
    color: "white"
    radius: UtilsJS.dp2px(2)

    property var visitados: 0
    property var naoVisitados: 0
    property var parcialmente: 0

    Column {
        id: content
        anchors.right: parent.right
        anchors.left: parent.left
        anchors.top: parent.top
        anchors.margins: UtilsJS.dp2px(6)
        spacing: UtilsJS.dp2px(6)
        Text {
            color: "#555558"
            text: qsTr("Desempenho")
            font.pixelSize: UtilsJS.dp2px(18)
        }
        Rectangle {
            height: 1
            width: parent.width
            color: "#c5c5c5"

        }
        Row {
            spacing: UtilsJS.dp2px(32)
            Column {
                spacing: UtilsJS.dp2px(3)
                Text {
                    color: "#99cc00"
                    text: qsTr("Visitado(s): <b>"+visitados+"</b>")
                    font.pixelSize: UtilsJS.dp2px(14)
                }
                Text {
                    color: "#ffbb33"
                    text: qsTr("Parcialmente Visitado(s): <b>"+parcialmente+"</b>")
                    font.pixelSize: UtilsJS.dp2px(14)
                }
                Text {
                    color: "#ff4444"
                    text: qsTr("Falta Visitar: <b>"+naoVisitados+"</b>")
                    font.pixelSize: UtilsJS.dp2px(14)
                }
            }

            QChart {
              id: chart_pie;
              width: UtilsJS.dp2px(64)
              height: UtilsJS.dp2px(64)
              chartAnimated: true
              chartAnimationEasing: Easing.Linear
              chartAnimationDuration: 500
              chartType: Charts.ChartType.PIE
              chartData: [{value: 1, color: "#000000"}]
            }

        }
    }

    function updateChart() {
        var dados = fornecedoresController.loadDadosFornecedores();
        var visitadosCnt = 0;
        var parcialmenteCnt = 0;
        var naovisitadosCnt = 0;

        var i;
        for(i=0; i<dados.length; i++) {
            if(dados[i]["status"]=="NAO_VISITADO") {
                naovisitadosCnt = naovisitadosCnt +1;
            } else if(dados[i]["status"]=="PARCIAL") {
                parcialmenteCnt = parcialmenteCnt + 1;
            } else {
                visitadosCnt = visitadosCnt + 1;
            }
        }

        if( (visitados != visitadosCnt) ||
            (parcialmente != parcialmenteCnt) ||
            (naoVisitados != naovisitadosCnt)  ) {

            visitados = visitadosCnt;
            parcialmente = parcialmenteCnt;
            naoVisitados = naovisitadosCnt;


            var newData = new Array();

            if(visitados>0) {
                newData[newData.length] = {value:visitados, color: "#99cc00"}
            }
            if(parcialmente>0) {
                newData[newData.length] = {value:parcialmente, color: "#ffbb33"}
            }
            if(naoVisitados>0) {
                newData[newData.length] = {value:naoVisitados, color: "#ff4444"}
            }

            if(newData.length==0) {
                newData[0] = {value:1, color: "#000000"}
            }
            chart_pie.setData(newData);
        }
    }
}

